Integrated circuits are conventionally provided as internal functional components of modern electronics and computer devices. The term integrated circuit identifies circuits that come in the form of integrated circuit chips. One form of integrated circuits are data storage devices, known as memory devices, which are conventionally utilized as internal storage areas in computers and computer based devices. There are several different types of memory used in modern electronics, one common type is RAM (random-access memory). RAM is characteristically found in use as main memory in a computer environment. RAM refers to read and write memory; that is, you can both write data into RAM and read data from RAM. This is in contrast to ROM (read-only memory), which permits you only to read data. Most RAM is volatile, which means that it requires a steady flow of electricity to maintain its contents. As soon as the power is turned off, whatever data was in RAM is lost.
Computers almost always contain a small amount of ROM that holds instructions for starting up the computer. Memory devices that do not lose the data content of their memory cells when power is removed are generally referred to as non-volatile memories. EEPROM (electrically erasable programmable read-only memory) and Flash memory are special types of non-volatile ROM that can be erased by exposing their cells to an electrical charge. EEPROM and Flash comprise a large number of memory cells having electrically isolated gates (floating gates). Data is stored in the floating gate field effect transistor (FET) memory cells in the form of charge on the floating gates.
Memory devices and other integrated circuits are conventionally tested as part of the manufacturing process to ensure proper operation. This is conventionally done at the end of the manufacturing process by an integrated circuit tester before the integrated circuit chip die is packaged in its final form. To reduce the number of test “vectors” having to be pre-generated and stored for application to the part during testing, integrated circuit testers conventionally utilize algorithmic test pattern generators (APGs), to generate the vectors on the fly from programmed test instructions. A problem in testing modern integrated circuits and memory devices is that, as device sizes and features are further reduced with improved processing and the speed, complexity, and density of the resulting integrated circuits increased, the resources of the integrated circuit tester are increasingly taxed and the time required for testing the integrated circuits is generally increased. As a result, many testers utilize two or more APGs in a parallel manner to increase throughput and speed. In addition, the testing patterns and processes utilized by the integrated circuit tester have also increased in complexity, increasing the time required to develop new test patterns and reducing the ability to reuse portions of old patterns in new designs, particularly in integrated circuit tester implementations that require test code designed for parallel APG usage.
For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for alternative methods of testing integrated circuits and generating integrated circuit testing patterns.